home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / VIC20 / B-Business / (v)b2.d64 / sept 30 random (.txt) < prev    next >
Commodore BASIC  |  2007-02-11  |  6KB  |  205 lines

  1. 1 REM  FROM COMMODORE       1540 DISK MANUAL
  2. 2 REM GREATLY MODIFIED     BY ROY ROBINSON       VANCOUVER P U G
  3. 3 REM
  4. 4 REM
  5. 5 SC=36879
  6. 10 PRINT"[147][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191] DISK FILE PROGRAM [146]"
  7. 20 PRINT"[144]DO YOU NEED          INSTRUCTIONS [158]?[146][144]"
  8. 30 PRINT"  [158]Y[146]ES OR [158]N[146]O  "
  9. 35 POKESC,31:GETO$:IFO$<>"Y"ANDO$<>"N"THEN35
  10. 40 POKESC,29:IFO$="Y"THENGOSUB1450:GOSUB2000
  11. 50 REM ***********************
  12. 60 REM * RANDOM FILE EXAMPLE *
  13. 70 REM ***********************
  14. 80 DIMI$(664):FD=0:FX=5:CH=2:FP=1:POKESC,29:F=0:O$=""
  15. 90 PRINT"[147][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191][191]"
  16. 100 PRINT"  INSERT DATA DISK[157][157][157][157][157][157][157][157][157][196][196][196][196][196][196][196][196][196]"
  17. 120 PRINT"TO START PRESS  '[158]S[146]'"
  18. 121 POKESC,31:GETP$:IFP$<>"S"THEN121
  19. 122 POKESC,29:OPEN15,8,15,"I0":OPEN2,8,2,"#":OPEN1,8,0,"$0"
  20. 123 PRINT"[147][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197]";
  21. 124 PRINT" INDEX FILE OPERATION"
  22. 125 PRINT"[198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198]"
  23. 140 T$="":I$=""
  24. 150 GET#1,B$
  25. 160 IF B$<>CHR$(34) THEN 150
  26. 170 GET#1,B$:IF B$<>CHR$(34)THEN T$=T$+B$:GOTO170
  27. 180 PRINT" "T$;
  28. 190 I$=I$+C$:GET#1,C$:IFC$<>""THEN190
  29. 200 PRINT""LEFT$(I$,3)" [146]";
  30. 210 CLOSE1
  31. 220 PRINT"[156]**********************";
  32. 250 PRINT" IS THIS A BLANK[144][146]DATA DISK  ?"
  33. 251 PRINT"  [158]Y[146][144]ES OR [158]N[146][144]O  "
  34. 252 POKESC,31:GETO$:IFO$<>"Y"ANDO$<>"N"THEN252
  35. 253 POKESC,29:GOSUB1450:IFO$="N"THEN259
  36. 255 FORI=1TO664:I$(I)="/"
  37. 256 PRINT"[158] WAIT ![146]";
  38. 257 PRINTI;:PRINTTAB(15)I$(I);:
  39. 258 NEXTI:GOTO50
  40. 259 OPEN5,8,5,"0:INDEX,S,R"
  41. 260 FORI=1TO664:INPUT#5,I$(I)
  42. 270 PRINT"[158] WAIT ![146]      [157][157][157][157][157]";
  43. 275 PRINTI;:PRINTTAB(15)I$(I);
  44. 280 NEXTI:CLOSE5
  45. 290 PRINT"[147][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197]";
  46. 300 PRINT"      JOB MENU        ";
  47. 310 PRINT"[198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198]";
  48. 320 PRINT
  49. 330 PRINT"       [158]C[146]REATE"
  50. 340 PRINT"       [158]D[146]ELETE"
  51. 350 PRINT"       [158]S[146]EARCH"
  52. 360 PRINT"       [158]E[146]ND"
  53. 370 PRINT
  54. 380 PRINT"   ENTER FUNCTION[160]#"
  55. 390 POKESC,31:F=0:O$=""
  56. 395 GETO$:IFO$=""THEN390
  57. 400 POKESC,29:IFO$="E"THENCLOSE15:CLOSE5:CLOSE2:PRINT"[147]":END
  58. 410 IFO$="C"THEN475
  59. 420 IFO$="S"THEN860
  60. 430 IFO$<>"D"THEN290
  61. 440 GOTO670
  62. 450 REM ***********************
  63. 460 REM * MASTER FILE CREATE  *
  64. 470 REM ***********************
  65. 475 PRINT"[147]"
  66. 480 PRINT"[197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197]";
  67. 490 PRINT" [160]MASTER FILE CREATE"
  68. 500 PRINT"[198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198]"
  69. 510 POKESC,31:INPUT"RECORD #  [158]0[146]    [157][157][157][157][157][157][157]";F:POKESC,29
  70. 511 GOSUB1450:IF F>664THENH1$="> 664":GOSUB1480:GOTO510
  71. 512 IFF=0THEN620
  72. 513 IFI$(F)<>"[166]"THENH1$="IS EMPTY":GOSUB1480:GOTO525
  73. 514 H1$=" [144]OCCUPIED":GOSUB1480
  74. 515 PRINT" DO YOU WISH TO:[158]1[146] WRITE FILE   ?[158]2[146] READ FILE    ?"
  75. 516 PRINT"[158]3[146] ANOTHER FILE ?"
  76. 517 POKESC,31:GETO$:IFO$<>"1"ANDO$<>"2"ANDO$<>"3"THEN517
  77. 518 POKESC,29
  78. 519 ONVAL(O$)GOTO525,890,620
  79. 525 GOSUB1450
  80. 535 FORI=1TO5:FB$(I)="":NEXT
  81. 537 PRINT"[183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183]";
  82. 538 PRINT"RECORD # ";F
  83. 540 INPUT"[158]NAME[146] =[157][157]";FB$(1)
  84. 550 INPUT"[158]ADD.[146] =[157][157]";FB$(2)
  85. 560 INPUT"[158]ZIP [146] =[157][157]";FB$(3)
  86. 570 INPUT"[158]TEL.[146] =[157][157]";FB$(4)
  87. 580 INPUT"[158]COM.[146] =[157][157]";FB$(5)
  88. 590 GOSUB1180
  89. 600 I$(F)="[166]"
  90. 610 GOTO480
  91. 620 GOSUB1450:OPEN5,8,5,"@0:INDEX,S,W"
  92. 630 FORI=1TO664:PRINT#5,I$(I);CHR$(13);
  93. 640 PRINT"[158] WAIT ![146]     [157][157][157][157][157]"I;I$(I)
  94. 650 NEXT:CLOSE5
  95. 660 IF F<>0THEN475
  96. 665 GOTO290
  97. 670 REM ***********************
  98. 680 REM    MASTER FILE DELETE
  99. 690 REM ***********************
  100. 700 PRINT"[147][144][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197]";
  101. 710 PRINT"  MASTER FILE DELETE"
  102. 720 PRINT"[144][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198]":PRINT
  103. 730 POKESC,31:INPUT"RECORD #  [158]0[146]    [157][157][157][157][157][157][157]";F:POKESC,29
  104. 731 IF F>664THENH1$="> 664":GOSUB1480:GOTO730
  105. 733 IFF=0THEN810
  106. 735 IFI$(F)<>"[166]"THENH1$="IS EMPTY":GOSUB1480:GOTO730
  107. 740 H1$=" [144]OCCUPIED":GOSUB1480
  108. 750 PRINT"[158][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196][196]"
  109. 760 PRINT" RECORD NO."F;"DELETE[157][157][157][157][157][157][184][184][184][184][184][184]     ARE YOU SURE [158]?[146]"
  110. 765 PRINT"  [158]Y[146]ES OR [158]N[146]O  "
  111. 770 POKESC,31
  112. 775 GETX$:IFX$<>"N"ANDX$<>"Y"THEN770
  113. 780 POKESC,29:IFX$="N"THEN700
  114. 790 I$(F)="/"
  115. 800 GOSUB1450:GOTO730
  116. 810 OPEN5,8,5,"@0:INDEX,S,W"
  117. 820 FORI=1TO664:PRINT#5,I$(I);CHR$(13);
  118. 830 PRINT"[158] WAIT ![146]     [157][157][157][157][157]"I;I$(I)
  119. 840 NEXT:CLOSE5
  120. 850 GOTO290
  121. 860 REM ***********************
  122. 870 REM *  FILE SEARCH        *
  123. 880 REM ***********************
  124. 890 PRINT"[147][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197]";
  125. 900 PRINT"       SEARCH       "
  126. 910 PRINT"[198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198][198]":PRINT
  127. 915 IFO$="2"THEN930
  128. 920 POKESC,31:INPUT"RECORD #  [158]0[146]    [157][157][157][157][157][157][157]";F:POKESC,29
  129. 930 POKESC,29:IF F>664THENH1$="> 664":GOSUB1480:GOTO920
  130. 940 IFF=0THEN290
  131. 950 IFI$(F)<>"[166]"THENH1$="IS EMPTY":GOSUB1480:GOTO920
  132. 960 H1$="OCCUPIED":GOSUB1480:GOSUB1070
  133. 970 GOSUB1450
  134. 975 PRINT"[183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183]";
  135. 980 PRINT"RECORD # ";F
  136. 1000 PRINT"NAME[146]:";FB$(1)
  137. 1010 PRINT"ADD.[146]:";FB$(2)
  138. 1020 PRINT"P.C.[146]:";FB$(3)
  139. 1030 PRINT"TEL.[146]:";FB$(4)
  140. 1040 PRINT"COM.[146]:";FB$(5)
  141. 1050 PRINT"---------------------"
  142. 1055 IFO$="2"THEN480
  143. 1060 GOTO920
  144. 1070 REM ***********************
  145. 1080 REM * FDD BLOCK READ      *
  146. 1090 REM ***********************
  147. 1100 GOSUB1380
  148. 1110 PRINT#15,"U1:";CH;FD;FT;FS
  149. 1120 PRINT#15,"B-P:";CH;FP
  150. 1130 GOSUB1270
  151. 1140 FORFI=1TOFX
  152. 1150 INPUT#CH,FB$(FI):
  153. 1160 NEXT
  154. 1170 RETURN
  155. 1180 REM ***********************
  156. 1190 REM * FDD BLOCK WRITE     *
  157. 1200 REM ***********************
  158. 1210 GOSUB1380
  159. 1220 PRINT#15,"B-P:";CH;FP
  160. 1230 FORFI=1TOFX:PRINT#CH,FB$(FI);CHR$(13);:NEXT
  161. 1240 PRINT#15,"U2:";CH;FD;FT;FS
  162. 1250 GOSUB1270
  163. 1260 RETURN
  164. 1270 REM ***********************
  165. 1280 REM *  ERROR CHECK        *
  166. 1290 REM ***********************
  167. 1300 INPUT#15,EN,EM$,ET,ES
  168. 1310 IFEN=0THENRETURN
  169. 1320 PRINT"ERROR STATUS:";EN;EM$;ET;ES
  170. 1330 POKESC,31:INPUT"CONTINUE?";Y$POKESC,29:IFY$="Y"THENRETURN
  171. 1340 STOP
  172. 1350 REM ***********************
  173. 1360 REM * SET TRACK & SECTOR  *
  174. 1370 REM ***********************
  175. 1380 IFF<358THENF1=0:F2=22:F3=1:GOTO1420
  176. 1390 IFF>357ANDF<471THENF1=357:F2=20:F3=19:GOTO1420
  177. 1400 IFF>471ANDF<580THENF1=471:F2=19:F3=25:GOTO1420
  178. 1410 IFF>580THENF1=580:F2=18:F3=31
  179. 1420 FT=INT(((F-F1)-1)/(F2-1))+F3
  180. 1430 FS=F-F1-(FT-F3)*F2+(FT-F3-1)
  181. 1440 RETURN
  182. 1450 FORQ=4272TO4601:
  183. 1460 POKEQ,32:NEXT
  184. 1470 RETURN
  185. 1480 H$="[144]RECORD #":C$="                      [145]"
  186. 1490 PRINT""C$;H$;F;H1$;""
  187. 1500 RETURN
  188. 1510 STOP
  189. 2000 PRINT"THIS PROGRAM CREATES  A DISK FILE WITH 664  RECORDS ( # 1-664 )."
  190. 2010 PRINT"THE JOB MENU ALLOWS   SELECTION OF FOUR     FUNCTIONS."
  191. 2020 PRINT"ENTERING RECORD[146] # [158]0[146]   WILL TAKE YOU BACK    TO THE MENU"
  192. 2030 PRINT"CONTINUE [158]Y[146]ES OR [158]N[146]O";
  193. 2040 POKESC,31:GETO$:IFO$<>"Y"ANDO$<>"N"THEN2040
  194. 2045 POKESC,29
  195. 2050 IFO$="N"THEN RETURN
  196. 2060 GOSUB1450
  197. 2070 PRINT"THE BORDER COLOR WILL BECOME [158]YELLOW WHEN A";
  198. 2080 PRINT"RESPONSE IS EXPECTED."
  199. 2090 PRINT"THE RETURN KEY MUST   BE DEPRESSED AFTER    ENTERING THE RECORD#.";
  200. 2100 PRINT"DO YOU WISH TO REREAD THE INSTRUCTIONS";
  201. 2110 PRINT"  [158]Y[146]ES OR [158]N[146]O  "
  202. 2120 POKESC,31:GETO$:IFO$<>"Y"ANDO$<>"N"THEN2120
  203. 2130 POKESC,29:IFO$="N"THENRETURN
  204. 2140 GOTO40
  205.